package com.mcc.app.energy.service;

import java.util.List;
import java.util.Map;

import com.mcc.app.energy.domain.EnergyPowerStatistics;

/**
 * 能源电力耗电统计Service接口
 *
 * @author gxy
 * @date 2025-03-25
 */
public interface IEnergyPowerStatisticsService {

    /**
     * 查询能源电力耗电统计
     *
     * @param id 能源电力耗电统计ID
     * @return 能源电力耗电统计
     */
    EnergyPowerStatistics selectEnergyPowerStatisticsById(Long id);

    /**
     * 查询能源电力耗电统计列表
     *
     * @param energyPowerStatistics 能源电力耗电统计
     * @return 能源电力耗电统计集合
     */
    List<EnergyPowerStatistics> selectEnergyPowerStatisticsList(EnergyPowerStatistics energyPowerStatistics);

    /**
     * 新增能源电力耗电统计
     *
     * @param energyPowerStatistics 能源电力耗电统计
     * @return 结果
     */
    int insertEnergyPowerStatistics(EnergyPowerStatistics energyPowerStatistics);

    /**
     * 修改能源电力耗电统计
     *
     * @param energyPowerStatistics 能源电力耗电统计
     * @return 结果
     */
    int updateEnergyPowerStatistics(EnergyPowerStatistics energyPowerStatistics);

    /**
     * 删除能源电力耗电统计信息
     *
     * @param id 能源电力耗电统计ID
     * @return 结果
     */
    int deleteEnergyPowerStatisticsById(Long id);

    /**
     * 批量删除能源电力耗电统计
     *
     * @param ids 需要删除的能源电力耗电统计ID
     * @return 结果
     */
    int deleteEnergyPowerStatisticsByIds(Long[] ids);

    Map<String, Object> getRealTimeInfo();

    Map<String, List<Map<String, Object>>> areaPowerChart();

}
